Recommender systems are commonly implemented in web-based electronic commerce applications such as online stores, catalogs, movie rentals, etc. The basic function of a recommender system is to automatically suggest items to each user that he or she may find appealing. The quality of recommender systems can be assessed with respect to various criteria, including accuracy, diversity, surprise or serendipity, and explainability of recommendations. By way of example, the accuracy of the recommendations generated by a recommender system may be measured using root mean squared error (RMSE). Thus, recommender systems can be trained and tested using an objective function that is based on the RMSE of the recommendations. Such an approach has the advantage of computational efficiency, but is generally based on observed feedback data only, such as actual ratings assigned by users to selectable items.
As a result, these and other similar approaches, which may alternatively involve optimization of mean absolute error (MAE) or a ranking measure, are based on an assumption that any missing ratings are missing at random. In the context of recommender systems, this assumption means that the likelihood that any particular rating is missing is entirely independent of the actual value of that rating. Recommender systems that adopt this assumption are configured simply to ignore the missing ratings. Unfortunately, missing ratings in many practical applications may not actually be missing at random. See, for example, B. Marlin et al., “Collaborative prediction and ranking with non-random missing data,” ACM Conference on Recommender Systems (RecSys), 2009, and B. Marlin et al., “Collaborative filtering and the missing at random assumption,” Conf. on Uncertainty in Artificial Intelligence (UAI), 2007. Recommender systems based on the missing at random assumption are therefore limited in terms of the level of performance they can achieve.
Accordingly, what is needed is a recommender system that takes both observed and missing feedback data into account while exhibiting a computational efficiency comparable to that of systems that simply ignore missing feedback data.